#ifndef CUSTOMERINPUTDIALOG_H
#define CUSTOMERINPUTDIALOG_H

#include "ui_CustomerInputDialog.h"
#include <QSortFilterProxyModel>

#include "CustomersModel.h"

namespace ecocity
{


class CustomerInputDialog : public QDialog, private Ui::CustomerInputDialog
{
    Q_OBJECT

public:

    CustomerInputDialog( const std::vector< Customer >& customers,
                         QWidget* parent = 0 );

    // Get Results from Dialog
    QString get_customer_type( ) const;
    QString get_customer_name( ) const;

private slots:

    // Called when ComboBox filters custemers by Type
    void show_customer_type( QString type );

    // Se llama cuando se cierra el Dialogo con Accept
    void accept( );

private:

    CustomersModel m_customers_model;

    QSortFilterProxyModel* customers_filter_model;

    QString m_customer_name;
};

} // namespace ecociy

#endif // CUSTOMERINPUTDIALOG_H
